Установка с использованием Docker-образа | Tdb
Руководство по установке и обновлению Установка Tarantool DB Установка с использованием Docker-образа

Установка с использованием Docker-образа

Для установки Tarantool DB:

  1. Скачайте архив с Docker-образом Tarantool DB из личного кабинета tarantool.io или используйте архив, полученный по почте или иным способом.

  2. Загрузите архив в Docker к остальным образам из файла:

    docker image load --input ./tarantooldb-docker-image-<VERSION>.<OS>.<ARCH>.tar.gz
    

    Здесь:

    • VERSION – версия Docker-образа продукта;

    • OS – поддерживаемая операционная система;

    • ARCH – архитектура процессора.

    Например, версия latest: tarantooldb-docker-image-2x-latest.linux.x86_64.tar.gz.

  3. Добавьте для Docker-образа тег 2x-latest:

    docker image tag tarantooldb:${VERSION} tarantooldb:2x-latest
    
  4. Для корректного запуска Tarantool DB с Docker-образом также необходимо установить Docker-образы Prometheus и Grafana. Скачайте архивы с этими Docker-образами в разделе third-party-docker-images личного кабинета tarantool.io.

  5. Загрузите архивы в Docker, используя команду docker image load:

    docker image load --input ./grafana_9.5.14.tar.gz
    docker image load --input ./prometheus_v2.30.3.tar.gz
    
  6. Проверьте, что все необходимые Docker-образы успешно загружены:

    docker image list
    

Пример запуска Tarantool DB с Docker-образом приведен в разделе Запуск кластера через Docker Compose.

Примечание

Развертывание Tarantool DB через Docker-образ используется в ознакомительных целях и рассчитано для использования в примерах документации и при тестировании. Для целевого развертывания используйте Ansible Tarantool Enterprise.

Описание Docker-образа

По умолчанию расположение файлов внутри Docker-образа выглядит так:

Наименование

Путь

Исполняемые файлы Tarantool DB

/app/tarantooldb/

Данные

/data/

Логи

stdout

Файлы control

/app/tarantooldb/var/run/{{ instance_name }}/tarantool.control

Файлы pid

/app/tarantooldb/var/run/{{ instance_name }}/tarantool.pid

Получить полный список переменных окружения можно так:

tarantool --help-env-list

Для Docker-образа действуют следующие переменные окружения:

Переменная окружения

Тип

Значение по умолчанию

Поддержка

TT_RUN_OPTIONS

string

N/A

TDB docker image

TT_INSTANCE_NAME

string

N/A

Community Edition

TT_CONFIG

string

nil

Community Edition

TT_APP_CFG

map

nil

Community Edition

TT_APP_FILE

string

nil

Community Edition

TT_APP_MODULE

string

nil

Community Edition

TT_AUDIT_LOG_EXTRACT_KEY

boolean

false

Enterprise Edition

TT_AUDIT_LOG_FILE

string

var/log/{{ instance_name }}/audit.log

Enterprise Edition

TT_AUDIT_LOG_FILTER

array

nil

Enterprise Edition

TT_AUDIT_LOG_FORMAT

string

json

Enterprise Edition

TT_AUDIT_LOG_NONBLOCK

boolean

false

Enterprise Edition

TT_AUDIT_LOG_PIPE

string

box.NULL

Enterprise Edition

TT_AUDIT_LOG_SPACES

array

box.NULL

Enterprise Edition

TT_AUDIT_LOG_SYSLOG_FACILITY

string

local7

Enterprise Edition

TT_AUDIT_LOG_SYSLOG_IDENTITY

string

tarantool

Enterprise Edition

TT_AUDIT_LOG_SYSLOG_SERVER

string

box.NULL

Enterprise Edition

TT_AUDIT_LOG_TO

string

devnull

Enterprise Edition

TT_COMPAT_BINARY_DATA_DECODING

string

new

Community Edition

TT_COMPAT_BOX_CFG_REPLICATION_SYNC_TIMEOUT

string

new

Community Edition

TT_COMPAT_BOX_CONSIDER_SYSTEM_SPACES_SYNCHRONOUS

string

old

Community Edition

TT_COMPAT_BOX_ERROR_SERIALIZE_VERBOSE

string

old

Community Edition

TT_COMPAT_BOX_ERROR_UNPACK_TYPE_AND_CODE

string

old

Community Edition

TT_COMPAT_BOX_INFO_CLUSTER_MEANING

string

new

Community Edition

TT_COMPAT_BOX_SESSION_PUSH_DEPRECATION

string

old

Community Edition

TT_COMPAT_BOX_SPACE_EXECUTE_PRIV

string

new

Community Edition

TT_COMPAT_BOX_SPACE_MAX

string

new

Community Edition

TT_COMPAT_BOX_TUPLE_EXTENSION

string

new

Community Edition

TT_COMPAT_BOX_TUPLE_NEW_VARARG

string

new

Community Edition

TT_COMPAT_C_FUNC_IPROTO_MULTIRETURN

string

new

Community Edition

TT_COMPAT_CONSOLE_SESSION_SCOPE_VARS

string

old

Community Edition

TT_COMPAT_FIBER_CHANNEL_CLOSE_MODE

string

new

Community Edition

TT_COMPAT_FIBER_SLICE_DEFAULT

string

new

Community Edition

TT_COMPAT_JSON_ESCAPE_FORWARD_SLASH

string

new

Community Edition

TT_COMPAT_SQL_PRIV

string

new

Community Edition

TT_COMPAT_SQL_SEQ_SCAN_DEFAULT

string

new

Community Edition

TT_COMPAT_YAML_PRETTY_MULTILINE

string

new

Community Edition

TT_CONFIG_CONTEXT

map

nil

Community Edition

TT_CONFIG_ETCD_ENDPOINTS

array

nil

Enterprise Edition

TT_CONFIG_ETCD_HTTP_REQUEST_TIMEOUT

number

nil

Enterprise Edition

TT_CONFIG_ETCD_HTTP_REQUEST_UNIX_SOCKET

string

nil

Enterprise Edition

TT_CONFIG_ETCD_PASSWORD

string

nil

Enterprise Edition

TT_CONFIG_ETCD_PREFIX

string

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_CA_FILE

string

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_CA_PATH

string

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_SSL_CERT

string

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_SSL_KEY

string

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_VERIFY_HOST

boolean

nil

Enterprise Edition

TT_CONFIG_ETCD_SSL_VERIFY_PEER

boolean

nil

Enterprise Edition

TT_CONFIG_ETCD_USERNAME

string

nil

Enterprise Edition

TT_CONFIG_ETCD_WATCHERS_RECONNECT_MAX_ATTEMPTS

integer

nil

Enterprise Edition

TT_CONFIG_ETCD_WATCHERS_RECONNECT_TIMEOUT

number

nil

Enterprise Edition

TT_CONFIG_RELOAD

string

auto

Community Edition

TT_CONFIG_STORAGE_ENDPOINTS

array

nil

Enterprise Edition

TT_CONFIG_STORAGE_PREFIX

string

nil

Enterprise Edition

TT_CONFIG_STORAGE_RECONNECT_AFTER

number

3

Enterprise Edition

TT_CONFIG_STORAGE_TIMEOUT

number

3

Enterprise Edition

TT_CONSOLE_ENABLED

boolean

true

Community Edition

TT_CONSOLE_SOCKET

string

var/run/{{ instance_name }}/tarantool.control

Community Edition

TT_CREDENTIALS_ROLES

map

nil

Community Edition

TT_CREDENTIALS_USERS

map

nil

Community Edition

TT_DATABASE_HOT_STANDBY

boolean

false

Community Edition

TT_DATABASE_INSTANCE_UUID

string

box.NULL

Community Edition

TT_DATABASE_MODE

string

box.NULL

Community Edition

TT_DATABASE_REPLICASET_UUID

string

box.NULL

Community Edition

TT_DATABASE_TXN_ISOLATION

string

best-effort

Community Edition

TT_DATABASE_TXN_TIMEOUT

number

3153600000

Community Edition

TT_DATABASE_USE_MVCC_ENGINE

boolean

false

Community Edition

TT_FAILOVER_CALL_TIMEOUT

number

1

Community Edition

TT_FAILOVER_CONNECT_TIMEOUT

number

1

Community Edition

TT_FAILOVER_LEASE_INTERVAL

number

30

Community Edition

TT_FAILOVER_PROBE_INTERVAL

number

10

Community Edition

TT_FAILOVER_RENEW_INTERVAL

number

10

Community Edition

TT_FAILOVER_STATEBOARD_KEEPALIVE_INTERVAL

number

10

Community Edition

TT_FAILOVER_STATEBOARD_RENEW_INTERVAL

number

2

Community Edition

TT_FEEDBACK_CRASHINFO

boolean

true

Community Edition

TT_FEEDBACK_ENABLED

boolean

true

Community Edition

TT_FEEDBACK_HOST

string

https://feedback.tarantool.io

Community Edition

TT_FEEDBACK_INTERVAL

number

3600

Community Edition

TT_FEEDBACK_METRICS_COLLECT_INTERVAL

number

60

Community Edition

TT_FEEDBACK_METRICS_LIMIT

integer

1048576

Community Edition

TT_FEEDBACK_SEND_METRICS

boolean

true

Community Edition

TT_FIBER_IO_COLLECT_INTERVAL

number

box.NULL

Community Edition

TT_FIBER_SLICE_ERR

number

1

Community Edition

TT_FIBER_SLICE_WARN

number

0.5

Community Edition

TT_FIBER_TOO_LONG_THRESHOLD

number

0.5

Community Edition

TT_FIBER_TOP_ENABLED

boolean

false

Community Edition

TT_FIBER_WORKER_POOL_THREADS

number

4

Community Edition

TT_FLIGHTREC_ENABLED

boolean

false

Enterprise Edition

TT_FLIGHTREC_LOGS_LOG_LEVEL

integer

6

Enterprise Edition

TT_FLIGHTREC_LOGS_MAX_MSG_SIZE

integer

4096

Enterprise Edition

TT_FLIGHTREC_LOGS_SIZE

integer

10485760

Enterprise Edition

TT_FLIGHTREC_METRICS_INTERVAL

number

1

Enterprise Edition

TT_FLIGHTREC_METRICS_PERIOD

number

180

Enterprise Edition

TT_FLIGHTREC_REQUESTS_MAX_REQ_SIZE

integer

16384

Enterprise Edition

TT_FLIGHTREC_REQUESTS_MAX_RES_SIZE

integer

16384

Enterprise Edition

TT_FLIGHTREC_REQUESTS_SIZE

integer

10485760

Enterprise Edition

TT_IPROTO_ADVERTISE_CLIENT

string

box.NULL

Community Edition

TT_IPROTO_ADVERTISE_PEER_LOGIN

string

nil

Community Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_CA_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_CERT_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_CIPHERS

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_KEY_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_PASSWORD

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_SSL_PASSWORD_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_PEER_PARAMS_TRANSPORT

string

nil

Community Edition

TT_IPROTO_ADVERTISE_PEER_PASSWORD

string

nil

Community Edition

TT_IPROTO_ADVERTISE_PEER_URI

string

nil

Community Edition

TT_IPROTO_ADVERTISE_SHARDING_LOGIN

string

nil

Community Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_CA_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_CERT_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_CIPHERS

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_KEY_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_PASSWORD

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_SSL_PASSWORD_FILE

string

nil

Enterprise Edition

TT_IPROTO_ADVERTISE_SHARDING_PARAMS_TRANSPORT

string

nil

Community Edition

TT_IPROTO_ADVERTISE_SHARDING_PASSWORD

string

nil

Community Edition

TT_IPROTO_ADVERTISE_SHARDING_URI

string

nil

Community Edition

TT_IPROTO_LISTEN

array

nil

Community Edition

TT_IPROTO_NET_MSG_MAX

integer

768

Community Edition

TT_IPROTO_READAHEAD

integer

16320

Community Edition

TT_IPROTO_THREADS

integer

1

Community Edition

TT_LABELS

map

nil

Community Edition

TT_LOG_FILE

string

var/log/{{ instance_name }}/tarantool.log

Community Edition

TT_LOG_FORMAT

string

plain

Community Edition

TT_LOG_LEVEL

number, string

5

Community Edition

TT_LOG_MODULES

map

box.NULL

Community Edition

TT_LOG_NONBLOCK

boolean

false

Community Edition

TT_LOG_PIPE

string

box.NULL

Community Edition

TT_LOG_SYSLOG_FACILITY

string

local7

Community Edition

TT_LOG_SYSLOG_IDENTITY

string

tarantool

Community Edition

TT_LOG_SYSLOG_SERVER

string

box.NULL

Community Edition

TT_LOG_TO

string

stderr

Community Edition

TT_MEMTX_ALLOCATOR

string

small

Community Edition

TT_MEMTX_MAX_TUPLE_SIZE

integer

1048576

Community Edition

TT_MEMTX_MEMORY

integer

268435456

Community Edition

TT_MEMTX_MIN_TUPLE_SIZE

integer

16

Community Edition

TT_MEMTX_SLAB_ALLOC_FACTOR

number

1.05

Community Edition

TT_MEMTX_SLAB_ALLOC_GRANULARITY

integer

8

Community Edition

TT_MEMTX_SORT_THREADS

integer

box.NULL

Community Edition

TT_METRICS_EXCLUDE

array

nil

Community Edition

TT_METRICS_INCLUDE

array

nil

Community Edition

TT_METRICS_LABELS

map

nil

Community Edition

TT_PROCESS_BACKGROUND

boolean

false

Community Edition

TT_PROCESS_COREDUMP

boolean

false

Community Edition

TT_PROCESS_PID_FILE

string

var/run/{{ instance_name }}/tarantool.pid

Community Edition

TT_PROCESS_STRIP_CORE

boolean

true

Community Edition

TT_PROCESS_TITLE

string

tarantool - {{ instance_name }}

Community Edition

TT_PROCESS_USERNAME

string

box.NULL

Community Edition

TT_PROCESS_WORK_DIR

string

box.NULL

Community Edition

TT_REPLICATION_ANON

boolean

false

Community Edition

TT_REPLICATION_BOOTSTRAP_STRATEGY

string

auto

Community Edition

TT_REPLICATION_CONNECT_TIMEOUT

number

30

Community Edition

TT_REPLICATION_ELECTION_FENCING_MODE

string

soft

Community Edition

TT_REPLICATION_ELECTION_MODE

string

box.NULL

Community Edition

TT_REPLICATION_ELECTION_TIMEOUT

number

5

Community Edition

TT_REPLICATION_FAILOVER

string

off

Community Edition

TT_REPLICATION_PEERS

array

box.NULL

Community Edition

TT_REPLICATION_SKIP_CONFLICT

boolean

false

Community Edition

TT_REPLICATION_SYNC_LAG

number

10

Community Edition

TT_REPLICATION_SYNC_TIMEOUT

number

box.NULL

Community Edition

TT_REPLICATION_SYNCHRO_QUORUM

string, number

N / 2 + 1

Community Edition

TT_REPLICATION_SYNCHRO_TIMEOUT

number

5

Community Edition

TT_REPLICATION_THREADS

integer

1

Community Edition

TT_REPLICATION_TIMEOUT

number

1

Community Edition

TT_ROLES

array

nil

Community Edition

TT_ROLES_CFG

map

nil

Community Edition

TT_SECURITY_AUTH_DELAY

number

0

Enterprise Edition

TT_SECURITY_AUTH_RETRIES

integer

0

Enterprise Edition

TT_SECURITY_AUTH_TYPE

string

chap-sha1

Community Edition

TT_SECURITY_DISABLE_GUEST

boolean

false

Enterprise Edition

TT_SECURITY_PASSWORD_ENFORCE_DIGITS

boolean

false

Enterprise Edition

TT_SECURITY_PASSWORD_ENFORCE_LOWERCASE

boolean

false

Enterprise Edition

TT_SECURITY_PASSWORD_ENFORCE_SPECIALCHARS

boolean

false

Enterprise Edition

TT_SECURITY_PASSWORD_ENFORCE_UPPERCASE

boolean

false

Enterprise Edition

TT_SECURITY_PASSWORD_HISTORY_LENGTH

integer

0

Enterprise Edition

TT_SECURITY_PASSWORD_LIFETIME_DAYS

integer

0

Enterprise Edition

TT_SECURITY_PASSWORD_MIN_LENGTH

integer

0

Enterprise Edition

TT_SECURITY_SECURE_ERASING

boolean

false

Enterprise Edition

TT_SHARDING_BUCKET_COUNT

integer

3000

Community Edition

TT_SHARDING_CONNECTION_OUTDATE_DELAY

number

nil

Community Edition

TT_SHARDING_DISCOVERY_MODE

string

on

Community Edition

TT_SHARDING_FAILOVER_PING_TIMEOUT

number

5

Community Edition

TT_SHARDING_LOCK

boolean

nil

Community Edition

TT_SHARDING_REBALANCER_DISBALANCE_THRESHOLD

number

1

Community Edition

TT_SHARDING_REBALANCER_MAX_RECEIVING

integer

100

Community Edition

TT_SHARDING_REBALANCER_MAX_SENDING

integer

1

Community Edition

TT_SHARDING_REBALANCER_MODE

string

auto

Community Edition

TT_SHARDING_ROLES

array

nil

Community Edition

TT_SHARDING_SCHED_MOVE_QUOTA

number

1

Community Edition

TT_SHARDING_SCHED_REF_QUOTA

number

300

Community Edition

TT_SHARDING_SHARD_INDEX

string

bucket_id

Community Edition

TT_SHARDING_SYNC_TIMEOUT

number

1

Community Edition

TT_SHARDING_WEIGHT

number

1

Community Edition

TT_SHARDING_ZONE

integer

nil

Community Edition

TT_SNAPSHOT_BY_INTERVAL

number

3600

Community Edition

TT_SNAPSHOT_BY_WAL_SIZE

integer

1e+18

Community Edition

TT_SNAPSHOT_COUNT

integer

2

Community Edition

TT_SNAPSHOT_DIR

string

var/lib/{{ instance_name }}

Community Edition

TT_SNAPSHOT_SNAP_IO_RATE_LIMIT

number

box.NULL

Community Edition

TT_SQL_CACHE_SIZE

integer

5242880

Community Edition

TT_VINYL_BLOOM_FPR

number

0.05

Community Edition

TT_VINYL_CACHE

integer

134217728

Community Edition

TT_VINYL_DEFER_DELETES

boolean

false

Community Edition

TT_VINYL_DIR

string

var/lib/{{ instance_name }}

Community Edition

TT_VINYL_MAX_TUPLE_SIZE

integer

1048576

Community Edition

TT_VINYL_MEMORY

integer

134217728

Community Edition

TT_VINYL_PAGE_SIZE

integer

8192

Community Edition

TT_VINYL_RANGE_SIZE

integer

box.NULL

Community Edition

TT_VINYL_READ_THREADS

integer

1

Community Edition

TT_VINYL_RUN_COUNT_PER_LEVEL

integer

2

Community Edition

TT_VINYL_RUN_SIZE_RATIO

number

3.5

Community Edition

TT_VINYL_TIMEOUT

number

60

Community Edition

TT_VINYL_WRITE_THREADS

integer

4

Community Edition

TT_WAL_CLEANUP_DELAY

number

14400

Community Edition

TT_WAL_DIR

string

var/lib/{{ instance_name }}

Community Edition

TT_WAL_DIR_RESCAN_DELAY

number

2

Community Edition

TT_WAL_EXT_NEW

boolean

nil

Enterprise Edition

TT_WAL_EXT_OLD

boolean

nil

Enterprise Edition

TT_WAL_EXT_SPACES

map

nil

Enterprise Edition

TT_WAL_MAX_SIZE

integer

268435456

Community Edition

TT_WAL_MODE

string

write

Community Edition

TT_WAL_QUEUE_MAX_SIZE

integer

16777216

Community Edition

TT_WAL_RETENTION_PERIOD

number

0

Enterprise Edition

TT_RUN_OPTIONS позволяет задать ключи запуска бинарного файла Tarantool. Например если указать --version, то строка запуска экземпляра в Docker-образе будет такой: tarantool --version.

Нашли ответ на свой вопрос?
Обратная связь